Evolving a Design and Keeping It Clean
from Domain Modeling Made Functional
LT;DR
要件が変わったら、必ず最初に ドメインモデル を見直す
型駆動設計 により、様々な恩恵が受けられる
ドメインオブジェクト を変更するとコンパイルエラーが発生するため、誤って壊す危険性は無い
ワークフロー に 依存関係 を追加する場合もコンパイルエラーが発生する
ワークフロー に新しいステップを追加する場合、他のステップに手を加える必要はない
オープン・クローズドの原則
入出力の型が同じであれば、互換性を維持しつつ関数本体を変更できる
#DDD #読書メモ #Domain_Modeling_Made_Functional